package cn.piesat.service.intf;

import cn.piesat.dto.AgreementDTO;

import java.util.List;
import java.util.Map;

/**
 * 	注册协议相关 服务接口
 * @author 奚好雷
 *
 */
public interface AgreementService {
	
	/**
	 * 	添加协议信息
	 * @param dto
	 */
	AgreementDTO add(AgreementDTO dto);
	
	/**
	 * 	根据类型和状态查询信息
	 * @param state
	 * @return
	 */
	List<AgreementDTO> findByState(Integer state);
	
	/**
	 * 	查询所有信息
	 * @return
	 */
	Map<String, Object> findAll(Integer pageNum,Integer pageSize);
	
	/**
	 * 	更新协议信息  如果存在启用的返回null
	 * @param dto
	 * @return
	 */
	AgreementDTO update(AgreementDTO dto);
	
	/**
	 * 	根据ID删除信息
	 * @param id
	 */
	void del(String id);
	
	/**
	 * 根据协议类型查询信息
	 * @param protocolType
	 * @return
	 */
	List<AgreementDTO> findByProtocolType(String protocolType);

	/**
	 * 根据id查询协议详细信息
	 * @param id
	 * @return
	 */
	AgreementDTO findById(String id);
}
